﻿(function ($) { 
    var printAreaCount = 0; 
    $.fn.printArea = function () { 
        var ele = $(this); 
        var idPrefix = "printArea_"; 
        removePrintArea(idPrefix + printAreaCount); 
        printAreaCount++; 
        var iframeId = idPrefix + printAreaCount; 
        var iframeStyle = 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;'; 
        iframe = document.createElement('IFRAME'); 
        $(iframe).attr({ 
            style: iframeStyle, 
            id: iframeId 
        }); 
	
        document.body.appendChild(iframe); 
        var doc = iframe.contentWindow.document; 
        $(document).find("link").filter(function () { 
            return $(this).attr("rel").toLowerCase() == "stylesheet"; 
        }).each( 
                function () { 
                    doc.write('<link type="text/css" rel="stylesheet" href=' + $(this).attr("href") + '" >'); 
                }); 
        doc.write('<div class="' + $(ele).attr("class") + '">' + $(ele).html() 
                + '</div>'); 
        doc.close(); 
        var frameWindow = iframe.contentWindow; 
        frameWindow.close(); 
        frameWindow.focus(); 
        frameWindow.print(); 
    } 
    var removePrintArea = function (id) { 
        $("iframe#" + id).remove(); 
    }; 
})(jQuery); 

